<template>
  <div class="wrapper">
    <!-- header部分 -->
    <header>
      <p>我的订单</p>
    </header>
    <!-- 订单列表部分 -->
    <div v-if="data.orderList.length > 0">
    <h3>未支付订单信息：</h3>
    <ul class="order">
      <p> {{console.log(data.orderList)}}</p>
      <li v-for="item in data.orderList" :key="item.orderId">
        <div v-if="item.orderState === 0">
        <div class="order-info">
          <p>
            {{ item.business.businessName }}
            <el-icon @click="detailetShow(item)"><ArrowDownBold /></el-icon>
          </p>
          <div class="order-info-right">
            <p>&#165;{{ item.orderTotal }}</p>
            <div class="order-info-right-icon">去支付</div>
          </div>
        </div>
        <ul class="order-detailet" v-show="item.isShowDetailet">
          <li v-for="odItem in item.list" :key="odItem.id">
            <p>{{ odItem.food.foodName }} x {{ odItem.quantity }}</p>
            <p>&#165;{{ odItem.food.foodPrice * odItem.quantity }}</p>
          </li>
          <li>
            <p>配送费</p>
            <p>&#165;{{ item.business.deliveryPrice }}</p>
          </li>
        </ul>
    </div>
      </li>
    </ul>
    <h3>已支付订单信息：</h3>
    <ul class="order">
      <li v-for="item in data.orderList"  :key="item.orderId">
        <div v-if="item.orderState === 1">
        <div class="order-info">
          <p>
            {{ item.business.businessName }}
            <el-icon @click="detailetShow(item)"><ArrowDownBold /></el-icon>
          </p>
          <div class="order-info-right">
            <p>&#165;{{ item.orderTotal }}</p>
          </div>
        </div>
        <ul class="order-detailet" v-show="item.isShowDetailet">
          <li v-for="odItem in item.list" :key="odItem.id">
            <p>{{ odItem.food.foodName }} x {{ odItem.quantity }}</p>
            <p>&#165;{{ odItem.food.foodPrice * odItem.quantity }}</p>
          </li>
          <li>
            <p>配送费</p>
            <p>&#165;{{ item.business.deliveryPrice }}</p>
          </li>
        </ul>
    </div>
      </li>
    </ul>
  </div>
    <!-- 底部菜单部分 -->
    <Footer />
  </div>
</template>

<script setup>
import {  onMounted,onBeforeMount } from 'vue';
import Footer from '../components/Footer.vue';
import request from "@/utils/request.js";
import {ElMessage} from "element-plus";
import {ArrowDownBold} from "@element-plus/icons-vue";

const data =reactive({
  user:JSON.parse(localStorage.getItem('user')),
  orderList:[]

})


onMounted(() => {
  listorders()
});

// 请求订单信息

const listorders=()=> {
  request.get('/Orders/listOrdersByUserId', {
        params: {
          userId:data.user.userId,
        }
      }
  ).then(res => {
    if(res.code === 1){
      //把购物车信息给cartList
      data.orderList = res.data
      data.orderList.forEach((orders) => {
        orders.isShowDetailet = false;
      });
    }else
    {
      ElMessage.error("出错啦！")
    }
  }).catch(error => {
    ElMessage.error("请求订单列表数据失败");
  });
}

const detailetShow = (order) => {
  order.isShowDetailet = !order.isShowDetailet;
};
</script>
<style scoped>
/****************** 总容器 ******************/
.wrapper {
  width: 100%;
  height: 100%;
}
/****************** header部分 ******************/
.wrapper header {
  width: 100%;
  height: 12vw;
  background-color: #17BAF9;
  color: #fff;
  font-size: 4.8vw;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
  display: flex;
  justify-content: center;
  align-items: center;
}
/****************** 历史订单列表部分 ******************/
.wrapper h3 {
  margin-top: 12vw;
  box-sizing: border-box;
  padding: 4vw;
  font-size: 4vw;
  font-weight: 300;
  color: #999;
}
.wrapper .order {
  width: 100%;
}
.wrapper .order li {
  width: 100%;
}
.wrapper .order li .order-info {
  box-sizing: border-box;
  padding: 2vw 4vw;
  font-size: 4vw;
  color: #666;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.wrapper .order li .order-info .order-info-right {
  display: flex;
}
.wrapper .order li .order-info .order-info-right .order-info-right-icon {
  background-color: #f90;
  color: #fff;
  border-radius: 3px;
  margin-left: 2vw;
  user-select: none;
  cursor: pointer;
}
.wrapper .order li .order-detailet {
  width: 100%;
}
.wrapper .order li .order-detailet li {
  width: 100%;
  box-sizing: border-box;
  padding: 1vw 4vw;
  color: #666;
  font-size: 3vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
</style>